# Get group details with membership info

Retrieves group details combined with the viewer's membership information.
            For remote (federated) groups, refreshes data from the remote server if stale.

            The response includes:
            - Full group information (same as GET /groups/{groupId})
            - Viewer's membership state (MEMBER, PENDING_JOIN, PENDING_INVITE, or NONE)
            - Related objects (membership details, join request, or pending invite)

            This endpoint is useful for displaying group pages where the viewer's
            relationship to the group is relevant, such as showing Accept/Reject
            buttons for pending invites.

Endpoint: GET /api/v1/groups/{groupId}/details
Version: 1.0
Security: header

## Path parameters:

  - `groupId` (string, required)
    The unique identifier of the group
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

## Response 200 fields (application/json):

  - `group` (object, required)
    The group details

  - `group.stats` (object)
    Group statistics

  - `group.stats.posts` (integer, required)
    Total number of posts

  - `group.stats.postsLast24h` (integer, required)
    Posts created in the last 24 hours

  - `group.stats.comments` (integer, required)
    Total number of comments

  - `group.stats.totalStorageBytes` (integer, required)
    Total uploaded bytes

  - `group.stats.avgPostsPerDay` (number, required)
    Average posts per day over the last 30 days

  - `group.stats.avgBytesPerDay` (number, required)
    Average uploaded bytes per day over the last 30 days

  - `group.stats.members` (integer, required)
    Count of active members in the group

  - `group.stats.totalEvents` (integer, required)
    Total group events recorded

  - `group.meta` (object, required)
    group metadata including color

  - `group.meta.color` (string, required)
    Group color in HEX format

  - `group.privacy` (string, required)
    who can access the group's content
    Enum: "PUBLIC", "PRIVATE"

  - `group.visibility` (string, required)
    how discoverable the group is
    Enum: "VISIBLE", "UNLISTED", "HIDDEN"

  - `group.joinMode` (string, required)
    how users can join the group
    Enum: "OPEN", "APPROVAL", "INVITE_ONLY"

  - `group.location` (object,null)
    group's location

  - `group.location.geo` (object,null, required)
    Coordinates and other geo data

  - `group.location.geo.latitude` (number, required)

  - `group.location.geo.longitude` (number, required)

  - `group.location.geo.altitude` (number,null)

  - `group.location.geo.accuracy` (number,null)

  - `group.location.geo.verticalAccuracy` (number,null)

  - `group.location.geo.speed` (number,null)

  - `group.location.geo.bearing` (number,null)

  - `group.location.geo.timestamp` (integer,null)

  - `group.location.name` (string,null, required)

  - `group.location.autoUpdate` (boolean, required)

  - `group.location.show` (boolean, required)

  - `group.timezone` (object,null)
    group's timezone

  - `group.timezone.ianaTimezone` (string,null, required)

  - `group.timezone.autoUpdate` (boolean, required)

  - `group.timezone.show` (boolean, required)

  - `group.isMember` (boolean,null)
    Whether the current viewer is a member of the group

  - `group.pin` (integer,null)
    Pin order number if group is pinned by viewer (null if not pinned)

  - `group.canManage` (boolean,null)
    Whether the current viewer can manage this group (owner, admin, or moderator)

  - `group.isOwner` (boolean,null)
    Whether the current viewer is an owner or admin of this group

  - `group.roles` (array,null)
    Viewer's roles in this group. Only populated in admin endpoints.

  - `group.groupId` (string, required)
    internal id of this group
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `group.groupName` (string, required)
    unique group name

  - `group.domain` (string, required)
    Group's domain

  - `group.local` (boolean, required)
    Whether this group is local to this server

  - `group.displayName` (string, required)
    full name of the group

  - `group.summary` (string, required)
    Group description

  - `group.uri` (string, required)
    URI of this group

  - `group.publicKey` (string, required)
    Group's public key for ActivityPub

  - `group.fields` (object)
    Custom fields for the group

  - `group.type` (string, required)
    the type of this group
    Enum: "CHANNEL", "INTEREST_GROUP", "ORGANIZATION"

  - `group.membersUrl` (string, required)
    URL to group members

  - `group.banner` (object,null)
    Group's header/banner upload

  - `group.banner.uploadId` (string, required)
    Internal id
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `group.banner.uploaderId` (string,null)
    User who physically uploaded this file. Null for platform-owned uploads (e.g., default covers). This is an audit/meta field — use ownerId for authorization.
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `group.banner.ownerId` (string, required)
    Entity that owns this upload (user, channel/group, or event). TypeID prefix indicates the owner type.
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `group.banner.attachedToId` (string,null)
    Entity this upload is attached to (e.g., a post or event). NULL for standalone uploads like avatars, covers, or media library items.
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `group.banner.uploadType` (string, required)
    Type of the upload
    Enum: "VIDEO", "IMAGE", "AUDIO", "DOCUMENT", "OTHER"

  - `group.banner.meta` (object)
    Meta data

  - `group.banner.meta.blurhash` (string,null)

  - `group.banner.meta.name` (string,null)

  - `group.banner.meta.altText` (string,null)

  - `group.banner.size` (integer, required)
    Size in bytes of all the files in this upload

  - `group.banner.files` (array, required)
    List of all the files this upload has

  - `group.banner.files.uri` (string,null, required)
    Full url of the file

  - `group.banner.files.fileId` (string, required)
    File id
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `group.banner.files.extension` (string, required)
    File extension
    Example: "mp4"

  - `group.banner.files.original` (boolean, required)
    true if this file is original, false if it is a derivative

  - `group.banner.files.meta` (object, required)
    File metadata. Contains optional values for width, height etc.

  - `group.banner.files.meta.duration` (number,null)
    Video duration in seconds

  - `group.banner.files.meta.width` (integer,null)
    Media width

  - `group.banner.files.meta.height` (integer,null)
    Media height

  - `group.banner.files.meta.codec` (string,null)
    Video codec

  - `group.banner.files.meta.rotate` (integer,null)
    Rotation in degrees

  - `group.banner.files.size` (integer, required)
    File size in bytes

  - `group.banner.files.createdAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `group.banner.files.updatedAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `group.banner.files.type` (string, required)
    File type
    Enum: "VIDEO", "IMAGE", "AUDIO", "DOCUMENT", "OTHER"

  - `group.banner.tags` (array, required)
    List of tags attached to upload
    Enum: "Post", "Avatar", "Header", "Album", "Emoji", "Event"

  - `group.banner.error` (string,null)
    Upload processing error

  - `group.banner.cached` (boolean)
    true if cached

  - `group.banner.logs` (string,null)
    Logs

  - `group.banner.remote` (boolean)
    true if this upload is remote

  - `group.banner.createdAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `group.banner.updatedAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `group.avatar` (object,null)
    Group's avatar

  - `group.avatar.uploadId` (string, required)
    Internal id
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `group.avatar.uploaderId` (string,null)
    User who physically uploaded this file. Null for platform-owned uploads (e.g., default covers). This is an audit/meta field — use ownerId for authorization.
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `group.avatar.ownerId` (string, required)
    Entity that owns this upload (user, channel/group, or event). TypeID prefix indicates the owner type.
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `group.avatar.attachedToId` (string,null)
    Entity this upload is attached to (e.g., a post or event). NULL for standalone uploads like avatars, covers, or media library items.
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `group.avatar.uploadType` (string, required)
    Type of the upload
    Enum: "VIDEO", "IMAGE", "AUDIO", "DOCUMENT", "OTHER"

  - `group.avatar.meta` (object)
    Meta data

  - `group.avatar.meta.blurhash` (string,null)

  - `group.avatar.meta.name` (string,null)

  - `group.avatar.meta.altText` (string,null)

  - `group.avatar.size` (integer, required)
    Size in bytes of all the files in this upload

  - `group.avatar.files` (array, required)
    List of all the files this upload has

  - `group.avatar.files.uri` (string,null, required)
    Full url of the file

  - `group.avatar.files.fileId` (string, required)
    File id
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `group.avatar.files.extension` (string, required)
    File extension
    Example: "mp4"

  - `group.avatar.files.original` (boolean, required)
    true if this file is original, false if it is a derivative

  - `group.avatar.files.meta` (object, required)
    File metadata. Contains optional values for width, height etc.

  - `group.avatar.files.meta.duration` (number,null)
    Video duration in seconds

  - `group.avatar.files.meta.width` (integer,null)
    Media width

  - `group.avatar.files.meta.height` (integer,null)
    Media height

  - `group.avatar.files.meta.codec` (string,null)
    Video codec

  - `group.avatar.files.meta.rotate` (integer,null)
    Rotation in degrees

  - `group.avatar.files.size` (integer, required)
    File size in bytes

  - `group.avatar.files.createdAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `group.avatar.files.updatedAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `group.avatar.files.type` (string, required)
    File type
    Enum: "VIDEO", "IMAGE", "AUDIO", "DOCUMENT", "OTHER"

  - `group.avatar.tags` (array, required)
    List of tags attached to upload
    Enum: "Post", "Avatar", "Header", "Album", "Emoji", "Event"

  - `group.avatar.error` (string,null)
    Upload processing error

  - `group.avatar.cached` (boolean)
    true if cached

  - `group.avatar.logs` (string,null)
    Logs

  - `group.avatar.remote` (boolean)
    true if this upload is remote

  - `group.avatar.createdAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `group.avatar.updatedAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `group.deletedAt` (string,null)
    Group deletion timestamp
    Example: "2022-03-10T16:15:50Z"

  - `group.createdAt` (string)
    Group's creation timestamp
    Example: "2022-03-10T16:15:50Z"

  - `group.updatedAt` (string)
    Group's last update timestamp
    Example: "2022-03-10T16:15:50Z"

  - `group.refreshedAt` (string)
    Group's last refresh timestamp
    Example: "2022-03-10T16:15:50Z"

  - `group.secret` (boolean)

  - `membershipInfo` (object, required)
    Viewer's membership state and related info

  - `membershipInfo.state` (string, required)
    The current state of the user's relationship with the group
    Enum: "MEMBER", "PENDING_JOIN", "PENDING_INVITE", "NONE"

  - `membershipInfo.member` (object,null)
    The membership object, present if state is MEMBER

  - `membershipInfo.member.groupName` (string, required)
    Group name

  - `membershipInfo.member.groupDisplayName` (string, required)
    Group display name

  - `membershipInfo.member.username` (string, required)
    User name (username)

  - `membershipInfo.member.displayName` (string, required)
    User display name

  - `membershipInfo.member.domain` (string,null)
    User domain

  - `membershipInfo.member.local` (boolean)
    Whether the user is local or not

  - `membershipInfo.member.groupAvatar` (object,null)
    Group avatar upload object

  - `membershipInfo.member.groupAvatar.uploadId` (string, required)
    Internal id
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.member.groupAvatar.uploaderId` (string,null)
    User who physically uploaded this file. Null for platform-owned uploads (e.g., default covers). This is an audit/meta field — use ownerId for authorization.
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.member.groupAvatar.ownerId` (string, required)
    Entity that owns this upload (user, channel/group, or event). TypeID prefix indicates the owner type.
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.member.groupAvatar.attachedToId` (string,null)
    Entity this upload is attached to (e.g., a post or event). NULL for standalone uploads like avatars, covers, or media library items.
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.member.groupAvatar.uploadType` (string, required)
    Type of the upload
    Enum: "VIDEO", "IMAGE", "AUDIO", "DOCUMENT", "OTHER"

  - `membershipInfo.member.groupAvatar.meta` (object)
    Meta data

  - `membershipInfo.member.groupAvatar.meta.blurhash` (string,null)

  - `membershipInfo.member.groupAvatar.meta.name` (string,null)

  - `membershipInfo.member.groupAvatar.meta.altText` (string,null)

  - `membershipInfo.member.groupAvatar.size` (integer, required)
    Size in bytes of all the files in this upload

  - `membershipInfo.member.groupAvatar.files` (array, required)
    List of all the files this upload has

  - `membershipInfo.member.groupAvatar.files.uri` (string,null, required)
    Full url of the file

  - `membershipInfo.member.groupAvatar.files.fileId` (string, required)
    File id
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.member.groupAvatar.files.extension` (string, required)
    File extension
    Example: "mp4"

  - `membershipInfo.member.groupAvatar.files.original` (boolean, required)
    true if this file is original, false if it is a derivative

  - `membershipInfo.member.groupAvatar.files.meta` (object, required)
    File metadata. Contains optional values for width, height etc.

  - `membershipInfo.member.groupAvatar.files.meta.duration` (number,null)
    Video duration in seconds

  - `membershipInfo.member.groupAvatar.files.meta.width` (integer,null)
    Media width

  - `membershipInfo.member.groupAvatar.files.meta.height` (integer,null)
    Media height

  - `membershipInfo.member.groupAvatar.files.meta.codec` (string,null)
    Video codec

  - `membershipInfo.member.groupAvatar.files.meta.rotate` (integer,null)
    Rotation in degrees

  - `membershipInfo.member.groupAvatar.files.size` (integer, required)
    File size in bytes

  - `membershipInfo.member.groupAvatar.files.createdAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `membershipInfo.member.groupAvatar.files.updatedAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `membershipInfo.member.groupAvatar.files.type` (string, required)
    File type
    Enum: "VIDEO", "IMAGE", "AUDIO", "DOCUMENT", "OTHER"

  - `membershipInfo.member.groupAvatar.tags` (array, required)
    List of tags attached to upload
    Enum: "Post", "Avatar", "Header", "Album", "Emoji", "Event"

  - `membershipInfo.member.groupAvatar.error` (string,null)
    Upload processing error

  - `membershipInfo.member.groupAvatar.cached` (boolean)
    true if cached

  - `membershipInfo.member.groupAvatar.logs` (string,null)
    Logs

  - `membershipInfo.member.groupAvatar.remote` (boolean)
    true if this upload is remote

  - `membershipInfo.member.groupAvatar.createdAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `membershipInfo.member.groupAvatar.updatedAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `membershipInfo.member.userAvatar` (object,null)
    User avatar upload object

  - `membershipInfo.member.userAvatar.uploadId` (string, required)
    Internal id
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.member.userAvatar.uploaderId` (string,null)
    User who physically uploaded this file. Null for platform-owned uploads (e.g., default covers). This is an audit/meta field — use ownerId for authorization.
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.member.userAvatar.ownerId` (string, required)
    Entity that owns this upload (user, channel/group, or event). TypeID prefix indicates the owner type.
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.member.userAvatar.attachedToId` (string,null)
    Entity this upload is attached to (e.g., a post or event). NULL for standalone uploads like avatars, covers, or media library items.
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.member.userAvatar.uploadType` (string, required)
    Type of the upload
    Enum: "VIDEO", "IMAGE", "AUDIO", "DOCUMENT", "OTHER"

  - `membershipInfo.member.userAvatar.meta` (object)
    Meta data

  - `membershipInfo.member.userAvatar.meta.blurhash` (string,null)

  - `membershipInfo.member.userAvatar.meta.name` (string,null)

  - `membershipInfo.member.userAvatar.meta.altText` (string,null)

  - `membershipInfo.member.userAvatar.size` (integer, required)
    Size in bytes of all the files in this upload

  - `membershipInfo.member.userAvatar.files` (array, required)
    List of all the files this upload has

  - `membershipInfo.member.userAvatar.files.uri` (string,null, required)
    Full url of the file

  - `membershipInfo.member.userAvatar.files.fileId` (string, required)
    File id
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.member.userAvatar.files.extension` (string, required)
    File extension
    Example: "mp4"

  - `membershipInfo.member.userAvatar.files.original` (boolean, required)
    true if this file is original, false if it is a derivative

  - `membershipInfo.member.userAvatar.files.meta` (object, required)
    File metadata. Contains optional values for width, height etc.

  - `membershipInfo.member.userAvatar.files.meta.duration` (number,null)
    Video duration in seconds

  - `membershipInfo.member.userAvatar.files.meta.width` (integer,null)
    Media width

  - `membershipInfo.member.userAvatar.files.meta.height` (integer,null)
    Media height

  - `membershipInfo.member.userAvatar.files.meta.codec` (string,null)
    Video codec

  - `membershipInfo.member.userAvatar.files.meta.rotate` (integer,null)
    Rotation in degrees

  - `membershipInfo.member.userAvatar.files.size` (integer, required)
    File size in bytes

  - `membershipInfo.member.userAvatar.files.createdAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `membershipInfo.member.userAvatar.files.updatedAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `membershipInfo.member.userAvatar.files.type` (string, required)
    File type
    Enum: "VIDEO", "IMAGE", "AUDIO", "DOCUMENT", "OTHER"

  - `membershipInfo.member.userAvatar.tags` (array, required)
    List of tags attached to upload
    Enum: "Post", "Avatar", "Header", "Album", "Emoji", "Event"

  - `membershipInfo.member.userAvatar.error` (string,null)
    Upload processing error

  - `membershipInfo.member.userAvatar.cached` (boolean)
    true if cached

  - `membershipInfo.member.userAvatar.logs` (string,null)
    Logs

  - `membershipInfo.member.userAvatar.remote` (boolean)
    true if this upload is remote

  - `membershipInfo.member.userAvatar.createdAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `membershipInfo.member.userAvatar.updatedAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `membershipInfo.member.groupId` (string, required)
    Group ID
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.member.memberId` (string, required)
    User who is a member of the group
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.member.roles` (array)
    All role identifiers for this member in the group.
            Includes both predefined roles (owner, admin, moderator, member, viewer)
            and custom roles.

  - `membershipInfo.member.meta` (object,null)
    Additional metadata about this membership

  - `membershipInfo.member.meta.description` (string)
    Optional description or note about this member's role or participation in the group

  - `membershipInfo.member.createdAt` (string,null)
    Example: "2022-03-10T16:15:50Z"

  - `membershipInfo.member.updatedAt` (string,null)
    Example: "2022-03-10T16:15:50Z"

  - `membershipInfo.joinRequest` (object,null)
    The join request object, present if state is PENDING_JOIN

  - `membershipInfo.joinRequest.groupJoinRequestId` (string, required)
    Unique identifier for this group join request
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.joinRequest.userId` (string, required)
    ID of the user requesting to join
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.joinRequest.groupId` (string, required)
    ID of the group being requested to join
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.joinRequest.username` (string, required)
    Username of the user requesting to join

  - `membershipInfo.joinRequest.displayName` (string, required)
    Display name of the user requesting to join

  - `membershipInfo.joinRequest.avatarId` (string,null)
    Avatar upload ID of the user
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.joinRequest.answerToken` (string,null)
    Answer token from completing group questions (if questions were required)

  - `membershipInfo.joinRequest.status` (string, required)
    Current status of the join request
    Enum: "PENDING", "APPROVED", "REJECTED"

  - `membershipInfo.joinRequest.reason` (string,null)
    Reason provided for approval or rejection
    Example: "Approved - meets community guidelines"

  - `membershipInfo.joinRequest.createdAt` (string, required)
    When the join request was created
    Example: "2022-03-10T16:15:50Z"

  - `membershipInfo.joinRequest.updatedAt` (string, required)
    When the join request was last updated (status change, etc)
    Example: "2022-03-10T16:15:50Z"

  - `membershipInfo.invite` (object,null)
    The invite object, present if state is PENDING_INVITE

  - `membershipInfo.invite.groupInviteId` (string, required)
    Unique identifier for this invitation
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.invite.groupId` (string, required)
    ID of the group
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.invite.inviterId` (string, required)
    ID of the user who sent the invitation
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.invite.inviteeId` (string,null)
    ID of the user being invited (null for email-only invites)
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.invite.status` (string, required)
    Current status of the invitation
    Enum: "PENDING", "ACCEPTED", "REJECTED"

  - `membershipInfo.invite.message` (string,null)
    Optional message from the inviter

  - `membershipInfo.invite.email` (string,null)
    Email address of the invitee (present for email-based invites)

  - `membershipInfo.invite.inviterName` (string, required)
    Username of the inviter

  - `membershipInfo.invite.inviterDisplayName` (string, required)
    Display name of the inviter

  - `membershipInfo.invite.inviterAvatar` (object,null)
    Avatar of the inviter

  - `membershipInfo.invite.inviterAvatar.uploadId` (string, required)
    Internal id
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.invite.inviterAvatar.uploaderId` (string,null)
    User who physically uploaded this file. Null for platform-owned uploads (e.g., default covers). This is an audit/meta field — use ownerId for authorization.
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.invite.inviterAvatar.ownerId` (string, required)
    Entity that owns this upload (user, channel/group, or event). TypeID prefix indicates the owner type.
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.invite.inviterAvatar.attachedToId` (string,null)
    Entity this upload is attached to (e.g., a post or event). NULL for standalone uploads like avatars, covers, or media library items.
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.invite.inviterAvatar.uploadType` (string, required)
    Type of the upload
    Enum: "VIDEO", "IMAGE", "AUDIO", "DOCUMENT", "OTHER"

  - `membershipInfo.invite.inviterAvatar.meta` (object)
    Meta data

  - `membershipInfo.invite.inviterAvatar.meta.blurhash` (string,null)

  - `membershipInfo.invite.inviterAvatar.meta.name` (string,null)

  - `membershipInfo.invite.inviterAvatar.meta.altText` (string,null)

  - `membershipInfo.invite.inviterAvatar.size` (integer, required)
    Size in bytes of all the files in this upload

  - `membershipInfo.invite.inviterAvatar.files` (array, required)
    List of all the files this upload has

  - `membershipInfo.invite.inviterAvatar.files.uri` (string,null, required)
    Full url of the file

  - `membershipInfo.invite.inviterAvatar.files.fileId` (string, required)
    File id
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.invite.inviterAvatar.files.extension` (string, required)
    File extension
    Example: "mp4"

  - `membershipInfo.invite.inviterAvatar.files.original` (boolean, required)
    true if this file is original, false if it is a derivative

  - `membershipInfo.invite.inviterAvatar.files.meta` (object, required)
    File metadata. Contains optional values for width, height etc.

  - `membershipInfo.invite.inviterAvatar.files.meta.duration` (number,null)
    Video duration in seconds

  - `membershipInfo.invite.inviterAvatar.files.meta.width` (integer,null)
    Media width

  - `membershipInfo.invite.inviterAvatar.files.meta.height` (integer,null)
    Media height

  - `membershipInfo.invite.inviterAvatar.files.meta.codec` (string,null)
    Video codec

  - `membershipInfo.invite.inviterAvatar.files.meta.rotate` (integer,null)
    Rotation in degrees

  - `membershipInfo.invite.inviterAvatar.files.size` (integer, required)
    File size in bytes

  - `membershipInfo.invite.inviterAvatar.files.createdAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `membershipInfo.invite.inviterAvatar.files.updatedAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `membershipInfo.invite.inviterAvatar.files.type` (string, required)
    File type
    Enum: "VIDEO", "IMAGE", "AUDIO", "DOCUMENT", "OTHER"

  - `membershipInfo.invite.inviterAvatar.tags` (array, required)
    List of tags attached to upload
    Enum: "Post", "Avatar", "Header", "Album", "Emoji", "Event"

  - `membershipInfo.invite.inviterAvatar.error` (string,null)
    Upload processing error

  - `membershipInfo.invite.inviterAvatar.cached` (boolean)
    true if cached

  - `membershipInfo.invite.inviterAvatar.logs` (string,null)
    Logs

  - `membershipInfo.invite.inviterAvatar.remote` (boolean)
    true if this upload is remote

  - `membershipInfo.invite.inviterAvatar.createdAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `membershipInfo.invite.inviterAvatar.updatedAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `membershipInfo.invite.inviteeName` (string,null)
    Username of the invitee (null for unclaimed email-only invites)

  - `membershipInfo.invite.inviteeDisplayName` (string,null)
    Display name of the invitee (null for unclaimed email-only invites)

  - `membershipInfo.invite.inviteeAvatar` (object,null)
    Avatar of the invitee

  - `membershipInfo.invite.inviteeAvatar.uploadId` (string, required)
    Internal id
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.invite.inviteeAvatar.uploaderId` (string,null)
    User who physically uploaded this file. Null for platform-owned uploads (e.g., default covers). This is an audit/meta field — use ownerId for authorization.
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.invite.inviteeAvatar.ownerId` (string, required)
    Entity that owns this upload (user, channel/group, or event). TypeID prefix indicates the owner type.
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.invite.inviteeAvatar.attachedToId` (string,null)
    Entity this upload is attached to (e.g., a post or event). NULL for standalone uploads like avatars, covers, or media library items.
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.invite.inviteeAvatar.uploadType` (string, required)
    Type of the upload
    Enum: "VIDEO", "IMAGE", "AUDIO", "DOCUMENT", "OTHER"

  - `membershipInfo.invite.inviteeAvatar.meta` (object)
    Meta data

  - `membershipInfo.invite.inviteeAvatar.meta.blurhash` (string,null)

  - `membershipInfo.invite.inviteeAvatar.meta.name` (string,null)

  - `membershipInfo.invite.inviteeAvatar.meta.altText` (string,null)

  - `membershipInfo.invite.inviteeAvatar.size` (integer, required)
    Size in bytes of all the files in this upload

  - `membershipInfo.invite.inviteeAvatar.files` (array, required)
    List of all the files this upload has

  - `membershipInfo.invite.inviteeAvatar.files.uri` (string,null, required)
    Full url of the file

  - `membershipInfo.invite.inviteeAvatar.files.fileId` (string, required)
    File id
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.invite.inviteeAvatar.files.extension` (string, required)
    File extension
    Example: "mp4"

  - `membershipInfo.invite.inviteeAvatar.files.original` (boolean, required)
    true if this file is original, false if it is a derivative

  - `membershipInfo.invite.inviteeAvatar.files.meta` (object, required)
    File metadata. Contains optional values for width, height etc.

  - `membershipInfo.invite.inviteeAvatar.files.meta.duration` (number,null)
    Video duration in seconds

  - `membershipInfo.invite.inviteeAvatar.files.meta.width` (integer,null)
    Media width

  - `membershipInfo.invite.inviteeAvatar.files.meta.height` (integer,null)
    Media height

  - `membershipInfo.invite.inviteeAvatar.files.meta.codec` (string,null)
    Video codec

  - `membershipInfo.invite.inviteeAvatar.files.meta.rotate` (integer,null)
    Rotation in degrees

  - `membershipInfo.invite.inviteeAvatar.files.size` (integer, required)
    File size in bytes

  - `membershipInfo.invite.inviteeAvatar.files.createdAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `membershipInfo.invite.inviteeAvatar.files.updatedAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `membershipInfo.invite.inviteeAvatar.files.type` (string, required)
    File type
    Enum: "VIDEO", "IMAGE", "AUDIO", "DOCUMENT", "OTHER"

  - `membershipInfo.invite.inviteeAvatar.tags` (array, required)
    List of tags attached to upload
    Enum: "Post", "Avatar", "Header", "Album", "Emoji", "Event"

  - `membershipInfo.invite.inviteeAvatar.error` (string,null)
    Upload processing error

  - `membershipInfo.invite.inviteeAvatar.cached` (boolean)
    true if cached

  - `membershipInfo.invite.inviteeAvatar.logs` (string,null)
    Logs

  - `membershipInfo.invite.inviteeAvatar.remote` (boolean)
    true if this upload is remote

  - `membershipInfo.invite.inviteeAvatar.createdAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `membershipInfo.invite.inviteeAvatar.updatedAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `membershipInfo.invite.groupName` (string, required)
    Name of the group

  - `membershipInfo.invite.groupDisplayName` (string, required)
    Display name of the group

  - `membershipInfo.invite.groupAvatar` (object,null)
    Avatar of the group

  - `membershipInfo.invite.groupAvatar.uploadId` (string, required)
    Internal id
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.invite.groupAvatar.uploaderId` (string,null)
    User who physically uploaded this file. Null for platform-owned uploads (e.g., default covers). This is an audit/meta field — use ownerId for authorization.
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.invite.groupAvatar.ownerId` (string, required)
    Entity that owns this upload (user, channel/group, or event). TypeID prefix indicates the owner type.
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.invite.groupAvatar.attachedToId` (string,null)
    Entity this upload is attached to (e.g., a post or event). NULL for standalone uploads like avatars, covers, or media library items.
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.invite.groupAvatar.uploadType` (string, required)
    Type of the upload
    Enum: "VIDEO", "IMAGE", "AUDIO", "DOCUMENT", "OTHER"

  - `membershipInfo.invite.groupAvatar.meta` (object)
    Meta data

  - `membershipInfo.invite.groupAvatar.meta.blurhash` (string,null)

  - `membershipInfo.invite.groupAvatar.meta.name` (string,null)

  - `membershipInfo.invite.groupAvatar.meta.altText` (string,null)

  - `membershipInfo.invite.groupAvatar.size` (integer, required)
    Size in bytes of all the files in this upload

  - `membershipInfo.invite.groupAvatar.files` (array, required)
    List of all the files this upload has

  - `membershipInfo.invite.groupAvatar.files.uri` (string,null, required)
    Full url of the file

  - `membershipInfo.invite.groupAvatar.files.fileId` (string, required)
    File id
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

  - `membershipInfo.invite.groupAvatar.files.extension` (string, required)
    File extension
    Example: "mp4"

  - `membershipInfo.invite.groupAvatar.files.original` (boolean, required)
    true if this file is original, false if it is a derivative

  - `membershipInfo.invite.groupAvatar.files.meta` (object, required)
    File metadata. Contains optional values for width, height etc.

  - `membershipInfo.invite.groupAvatar.files.meta.duration` (number,null)
    Video duration in seconds

  - `membershipInfo.invite.groupAvatar.files.meta.width` (integer,null)
    Media width

  - `membershipInfo.invite.groupAvatar.files.meta.height` (integer,null)
    Media height

  - `membershipInfo.invite.groupAvatar.files.meta.codec` (string,null)
    Video codec

  - `membershipInfo.invite.groupAvatar.files.meta.rotate` (integer,null)
    Rotation in degrees

  - `membershipInfo.invite.groupAvatar.files.size` (integer, required)
    File size in bytes

  - `membershipInfo.invite.groupAvatar.files.createdAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `membershipInfo.invite.groupAvatar.files.updatedAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `membershipInfo.invite.groupAvatar.files.type` (string, required)
    File type
    Enum: "VIDEO", "IMAGE", "AUDIO", "DOCUMENT", "OTHER"

  - `membershipInfo.invite.groupAvatar.tags` (array, required)
    List of tags attached to upload
    Enum: "Post", "Avatar", "Header", "Album", "Emoji", "Event"

  - `membershipInfo.invite.groupAvatar.error` (string,null)
    Upload processing error

  - `membershipInfo.invite.groupAvatar.cached` (boolean)
    true if cached

  - `membershipInfo.invite.groupAvatar.logs` (string,null)
    Logs

  - `membershipInfo.invite.groupAvatar.remote` (boolean)
    true if this upload is remote

  - `membershipInfo.invite.groupAvatar.createdAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `membershipInfo.invite.groupAvatar.updatedAt` (string, required)
    Example: "2022-03-10T16:15:50Z"

  - `membershipInfo.invite.createdAt` (string, required)
    When the invitation was created
    Example: "2022-03-10T16:15:50Z"

  - `membershipInfo.invite.updatedAt` (string, required)
    When the invitation was last updated
    Example: "2022-03-10T16:15:50Z"

## Response 401 fields (application/json):

  - `errorCode` (string, required)
    Error code

  - `message` (string, required)
    Error message

  - `docUrl` (string)
    Link to documentation

## Response 403 fields (application/json):

  - `errorCode` (string, required)
    Error code

  - `message` (string, required)
    Error message

  - `docUrl` (string)
    Link to documentation

## Response 404 fields (application/json):

  - `errorCode` (string, required)
    Error code

  - `message` (string, required)
    Error message

  - `docUrl` (string)
    Link to documentation


